1. Field of the Invention
The present invention relates generally to a multi-processor system and, more particularly, to a multi-processor system with resources which can be utilized by each processor.
2. Description of the Related Art
Over the recent years, there has been increased the number of systems in which the control is conducted by a plurality of processors. This type of system is classified into a system in which the respective processors are made to implement absolutely different control operations, and a system in which the processors are made to execute similar control operations. Known as the latter system is a system in which each processor is made to execute a call process (to control a switch and a trunk etc.), which is a so-called multi-processor type switching system.
The multi-processor type switching system is classified into a switching system in which the resources are managed in concentration, and a switching system in which the resources are managed in distribution. Hereinafter, a construction and an operation of the switching system of each type will be briefly explained.
To start with, referring to FIG. 7, the construction and the operation of the switching system of the concentrated management type will be described. As shown in FIG. 7, this type of switching system is provided with a processor for managing the resources together with some processors for call processing. The resource management processor manages all the resources utilized by the respective processors for the call processing, but does not execute the call processing. By contrast, the processors for the call processing implement only the call processing.
In this type of switching system, the call processing processor (which is a call processing processor 1 in FIG. 7) requiring the resource issues a request for grasping the resource to the resource management processor through inter-processor communications. The resource management processor, as schematically illustrated in FIG. 7, manages a using condition (a free/occupied condition) of the resources, and, when receiving the resource grasping request, judges whether or not there exist free resources of a quantity enough to meet the request on the basis of the using condition managed. Then, if free resources of such a quantity exist, the free resources are grasped, and the call processing processor having made the request is notified of a circuit number (which is a piece of data for designating a trunk that may be used; hereinafter referred to as a grasp circuit number) corresponding to the grasped resources.
The call processing processor notified of the grasp circuit number starts control (utilizing the resource) using this grasp circuit number. Then, when the resources becomes unnecessary, a release request containing the grasp circuit number is issued to the resource management processor, and the resource management processor having received the release request releases the resources corresponding to a content thereof.
Next, the construction and the operation of the distributed management type switching system will be explained.
In this type of switching system, each of the processors has a resource management function, and manages resources allocated to the processor itself among all the resources. To be specific, the distributed management type switching system has the same quantity of resources as that of the concentrated management type switching system shown in FIG. 7, and is constructed so that the control is conducted by three units of processors. In this switching system, as schematically shown in FIG. 8, each of the processors independently manages ⅓ of the resources managed by the resource management processor of the concentrated management type switching system.
As obvious from the description made so far, the conventional distributed management type switching system is capable of grasping and releasing the resource without the inter-processor communications. Hence, the distributed management type switching system is operable at a higher speed than in the concentrated management type switching system wherein the inter-processor communications are always needed when grasping and releasing the resource. Further, the distributed management type switching system does not require the resource management processor and can be therefore manufactured at lower costs than the concentrated management type switching system. Moreover, the concentrated management type switching system as a whole might fall into a breakdown if the resource management processor is broken down. While on the other hand, it never happens that the whole of the distributed management type switching system might fall into the breakdown as far as all the processors are not broken down.
Thus, the distributed management type switching system exhibits more advantages than the concentrated management type switching system. The distributed management type switching system has, however, such a defect that a distribution loss of the resources might be caused.
Under such circumstances, it is a primary object of the present invention to provide a multi-processor system causing no distribution loss of resources and besides exhibiting no defects inherent in a prior art concentrated management type system.
To accomplish the above object, a multi-processor system according to the present invention comprises a plurality of processors, and resources which are usable in common by the plurality of processors, and are classified into a plurality of resource groups allocated respectively to the plurality of processors. Each of the plurality of processors includes (a) a communication device for performing communications between other processors, (b) a managing unit for managing a using condition of each resource within the resource group allocated to the processor itself and, when requested for permitting the use of the resource, notifying the requesting processor of the permission or non-permission to use the resource on the basis of the using condition, and (c) a requesting unit for requesting, when the resource is needed, the managing unit to permit the use of the resource and, when notified of the non-permission of the use thereof from the managing unit, requesting the managing unit within other processor to permit the use of the resource by utilizing the communication device.
In the multi-processor system having the above construction, in a normal state (wherein an activity ratio of the resource in the resource group is not so high), the resource of each processor is grasped and released through no intermediary of inter-processor communications. Further, each processor, if the resources managed by the processor itself are all occupied and so on, can receive a permission to use the resources managed by other processors by utilizing the inter-processor communications. Accordingly, it follows that the present multi-processor system has a variety of advantages possessed by the distributed management type system as they are, and besides operates without causing any distribution loss.
On the occasion of constructing the multi-processor system according to the present invention, it is desirable to adopt the requesting unit for sequentially requesting the managing unit within other processors to permit the use of the resource till a notification of the non-permission of the use is given from the managing unit within all of other processors, or till a notification of the permission of the use is given from the managing unit within other processor having requested the permission to use the resource.
Moreover, when adopting the above requesting unit, it is desirable that each of the requesting units be constructed so that the processors requested i-th time by the respective requesting units to permit the use of the resources are different from each other. This construction being adopted, there is obtained the multi-processor system in which the respective resource groups are used on the average.
Furthermore, when constructing the multi-processor system according to the present invention, each of the processors may further include a notifying unit for notifying other processors of an activity ratio of the resource of the resource group allocated to the processor itself, and a storing unit for storing the resource activity ratio notified from other processor. There may be adopted the requesting unit which does not request the processors having the activity ratios each equal to or greater than a predetermined value, these ratios being stored in the storing unit.
In the case of adopting the such a construction, a probability of being notified of the non-permission of the use through the inter-processor communications (the communication device) decreases, and hence the multi-processor system operating correspondingly at a higher speed is obtained.
Moreover, when constructing the multi-processor system according to the present invention, this system may further comprise a processor to which the resource group is not allocated. In this case, what is used as this processor is a processor including a second communication device for performing the communications with other processor, and a second requesting unit for requesting, when the resource is required, the managing unit within other processor to permit the use of the resource by utilizing the second communication device. Further, on this occasion, there may be adopted the second requesting unit for sequentially requesting the managing unit within other processors to permit the use of the resource till the non-permission of the use is given from the managing unit within all of other processors, or till the permission of the use is given from the managing unit within other processor having requested the permission to use the resource.
Namely, the multi-processor system of the present invention may be actualized in such a form as to add the processor not incorporating the resource management function.